#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
专门用于处理附件1文件夹的分析脚本
"""

import os
import sys

# 将代码目录添加到路径
current_dir = os.path.dirname(os.path.abspath(__file__))
code_dir = os.path.join(current_dir, "code")
sys.path.append(code_dir)

try:
    from res import ActivityMonitor
    print("成功导入ActivityMonitor类")
except ImportError as e:
    print(f"导入ActivityMonitor类失败: {e}")
    sys.exit(1)

def main():
    print("\n" + "="*60)
    print("   分析附件1文件夹中的志愿者活动数据")
    print("="*60)
    
    # 文件路径
    file_dir = os.path.join(current_dir, "file")
    folder_path = os.path.join(file_dir, "附件1")
    
    # 检查附件1文件夹是否存在
    if not os.path.isdir(folder_path):
        print(f"错误: 找不到附件1文件夹 {folder_path}")
        print("请确保file目录下存在附件1文件夹，且文件夹中包含CSV格式的数据文件")
        return
    
    # 检查文件夹中的文件
    csv_files = [f for f in os.listdir(folder_path) if f.endswith('.csv')]
    if not csv_files:
        print(f"错误: 附件1文件夹中没有CSV文件")
        return
    
    print(f"找到以下文件: {csv_files}")
    
    # 创建活动监测器并分析数据
    monitor = ActivityMonitor()
    
    # 输出文件
    output_file = os.path.join(current_dir, "result_1.xlsx")
    
    print("\n正在分析数据，请稍候...")
    result = monitor.analyze_volunteer_activity(input_path=folder_path, output_file=output_file)
    
    if result is not None:
        print("\n分析完成!")
        print(f"\n统计结果示例（前5行）:")
        print(result.head().to_string(index=False))
        print(f"\n结果已保存到: {output_file}")
    else:
        print("\n分析失败，请检查数据格式")

if __name__ == "__main__":
    try:
        main()
    except Exception as e:
        print(f"\n程序运行出错: {e}")
    
    print("\n按回车键退出...")
    input() 